Skip to content

fix(roadmap): handle 5-column progress tables with Milestone column#923

Open
j2h4u wants to merge 1 commit intogsd-build:mainfrom
j2h4u:fix/progress-table-columns
Open

fix(roadmap): handle 5-column progress tables with Milestone column#923
j2h4u wants to merge 1 commit intogsd-build:mainfrom
j2h4u:fix/progress-table-columns

Conversation

@j2h4u
Copy link
Contributor

@j2h4u j2h4u commented Mar 3, 2026

What

Replaced regex-based progress table parsing with cell-based split('|') approach in both cmdRoadmapUpdatePlanProgress and cmdPhaseComplete. Now correctly handles both 4-column and 5-column (with Milestone) table layouts.

Why

The regex captured a fixed number of columns, so 5-column tables (Phase | Milestone | Plans | Status | Completed) had the Milestone column consumed by the match — Status and Date were written to the wrong cells, corrupting the table.

Testing

  • Tested on Linux
  • Tested on macOS
  • Tested on Windows

Checklist

  • Follows GSD style (no enterprise patterns, no filler)
  • Updates CHANGELOG.md for user-facing changes
  • No unnecessary dependencies added
  • Works on Windows (no path-sensitive changes)

Breaking Changes

None

The regex-based table parser captured a fixed number of columns,
so 5-column tables (Phase | Milestone | Plans | Status | Completed)
had the Milestone column eaten and Status/Date written to wrong cells.

Replaced regex with cell-based `split('|')` parsing that detects
column count (4 or 5) and updates the correct cells by index.
Affects both `cmdRoadmapUpdatePlanProgress` and `cmdPhaseComplete`.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@j2h4u j2h4u requested a review from glittercowboy as a code owner March 3, 2026 22:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant